Conventionally, technologies have been disclosed that upon a compression determination instruction, issue an exclusive instruction to transition to a compression mode, and perform transition to a compression mode and a non-compression mode (see, for example, Japanese Laid-Open Patent Publication Nos. 2001-142696 and 2003-050696). During the compression mode, these technologies use a memory address that is different from that of the instruction memory (called a dictionary address, which is stored in compressed instruction code), refer to the dictionary memory, and restore an instruction.
Further, technology has been disclosed that stores a portion of the previous operation code and a portion of the operand, and by compensating deficient portions of compressed code by the stored code, restore the compressed code (see, for example, Japanese Laid-Open Patent Publication No. 2004-355477). This technology, for example, when the size of the instruction code is 32 bits, compresses the code to 16 bits.
Technology that compresses and curtails frequent no operation instructions in Very Long Instruction Words (VLIWs) and thereby reduces the instruction code size has been disclosed (for example, Japanese Laid-Open Patent Publication No. H7-182169).
Nonetheless, with the technologies according to Japanese Laid-Open Patent Publication Nos. 2001-142696 and 2003-050696, since the memory that is called dictionary memory, which is also different from the instruction memory, is used, a problem arises in that the number of memory accesses increases by the number of accesses to the dictionary memory and power consumption increases.
With the technology according to Japanese Laid-Open Patent Publication No. 2004-355477, since a portion of the preceding instruction code has to be stored for each instruction code, a problem arises in that compression efficiency is low. Further, with the technology according to Japanese Laid-Open Patent Publication No. H7-182169, only no operation instructions can be compressed. Thus, the instruction code compression efficiency is low and a problem arises in that curtailing of the memory access frequency is not sufficient as compared to before compression.